package com.sg.service.biz.app.nb;

import cn.hutool.core.bean.BeanUtil;
import com.sg.dto.biz.app.req.*;
import com.sg.dto.biz.app.res.*;
import org.apache.skywalking.apm.toolkit.trace.Tag;
import org.apache.skywalking.apm.toolkit.trace.Tags;
import org.apache.skywalking.apm.toolkit.trace.Trace;
import org.springframework.stereotype.Service;

/**
 * @author ： 手工接入方法
 * @version 1.0
 * @since 2022/5/28 15:32
 */
@Service
public class NbVirtualOrg {
    /**
     * code:receptionService
     * name:M3-高层进入管理
     * desc:undefined
     * gen by moon at 8/21/2022, 5:02:07 AM
     **/
    @Trace(operationName = "M3-高层进入管理")
    @Tags({@Tag(key = "参数", value = "arg[0]"),
            @Tag(key = "返回值", value = "returnedObj")})
    public ObtainReceiveFieldRespDto obtainReceiveField(ObtainReceiveFieldReqDto reqDto) {
        return BeanUtil.toBean(reqDto, ObtainReceiveFieldRespDto.class);
    }

    /**
     * code:receptionService
     * name:M3获取接收外部字段(特殊方法）
     * desc:undefined
     * gen by moon at 10/7/2022, 1:47:49 AM
     **/
    @Trace(operationName = "M3获取接收外部字段(特殊方法）")
    @Tags({@Tag(key = "参数", value = "arg[0]"),
            @Tag(key = "返回值", value = "returnedObj")})
    public ObtainReceiveOutFieldRespDto obtainReceiveOutField(ObtainReceiveOutFieldReqDto reqDto) {
        return BeanUtil.toBean(reqDto, ObtainReceiveOutFieldRespDto.class);
    }

    /**
     * code:receptionService
     * name:M3执行业务应用构造出入参字段（特殊方法）
     * desc:undefined
     * gen by moon at 12/10/2022, 3:47:45 PM
     **/
    @Trace(operationName = "M3执行业务应用构造出入参字段（特殊方法）")
    @Tags({@Tag(key = "参数", value = "arg[0]"),
            @Tag(key = "返回值", value = "returnedObj")})
    public ImplementBizConstructAccessParameterFieldRespDto implementBizConstructAccessParameterField(ImplementBizConstructAccessParameterFieldReqDto reqDto) {
        return BeanUtil.toBean(reqDto, ImplementBizConstructAccessParameterFieldRespDto.class);
    }

    /**
     * code:receptionService
     * name:M3接收负责人就职单位作为主管就职单位ID
     * desc:undefined
     * gen by moon at 1/31/2023, 2:02:11 AM
     **/
    @Trace(operationName = "M3接收负责人就职单位作为主管就职单位ID")
    @Tags({@Tag(key = "参数", value = "arg[0]"),
            @Tag(key = "返回值", value = "returnedObj")})
    public ImplementAccessParameterBizFieldRespDto implementAccessParameterBizField(ImplementAccessParameterBizFieldReqDto reqDto) {
        return BeanUtil.toBean(reqDto, ImplementAccessParameterBizFieldRespDto.class);
    }

    /**
     * code:receptionService
     * name:初始化：FALSE
     * desc:undefined
     * gen by moon at 5/11/2023, 4:36:20 AM
     **/
    @Trace(operationName = "初始化：FALSE")
    @Tags({@Tag(key = "参数", value = "arg[0]"),
            @Tag(key = "返回值", value = "returnedObj")})
    public CalculateAcceptAboveFieldsRespDto calculateAcceptAboveFields(CalculateAcceptAboveFieldsReqDto reqDto) {
        return BeanUtil.toBean(reqDto, CalculateAcceptAboveFieldsRespDto.class);

    }

    /**
     * code:receptionService
     * name:M3约定为系统当前时间
     * desc:undefined
     * gen by moon at 6/8/2023, 5:11:12 PM
     **/
    @Trace(operationName = "M3约定为系统当前时间")
    @Tags({@Tag(key = "参数", value = "arg[0]"),
            @Tag(key = "返回值", value = "returnedObj")})
    public ImplementAcceptFieldRespDto implementAcceptField(ImplementAcceptFieldReqDto reqDto) {
        return BeanUtil.toBean(reqDto, ImplementAcceptFieldRespDto.class);
    }

    /**
     * code:receptionService
     * name:M3接收责任主体ID
     * desc:undefined
     * gen by moon at 6/26/2023, 10:09:53 PM
     **/
    @Trace(operationName = "M3接收责任主体ID")
    @Tags({@Tag(key = "参数", value = "arg[0]"),
            @Tag(key = "返回值", value = "returnedObj")})
    public ImplementGainInParameterFieldsRespDto implementGainInParameterFields(ImplementGainInParameterFieldsReqDto reqDto) {
        return BeanUtil.toBean(reqDto, ImplementGainInParameterFieldsRespDto.class);
    }

    /**
     * code:receptionService
     * name:M3-接收入参
     * desc:undefined
     * gen by moon at 12/2/2023, 12:27:59 AM
     **/
    @Trace(operationName = "M3-接收入参")
    @Tags({@Tag(key = "参数", value = "arg[0]"),
            @Tag(key = "返回值", value = "returnedObj")})
    public ImplementAcceptFieldByStandardDataRespDto implementAcceptFieldByStandardData(ImplementAcceptFieldByStandardDataReqDto reqDto) {
        return BeanUtil.toBean(reqDto, ImplementAcceptFieldByStandardDataRespDto.class);

    }

    /**
     * code:receptionService
     * name:M3-约定出参：高层分管领导
     * desc:undefined
     * gen by moon at 12/4/2023, 9:51:50 AM
     **/
    @Trace(operationName = "M3-约定出参：高层分管领导")
    @Tags({@Tag(key = "参数", value = "arg[0]"),
            @Tag(key = "返回值", value = "returnedObj")})
    public ImplementTypeCodeFieldsAcceptRespDto implementTypeCodeFieldsAccept(ImplementTypeCodeFieldsAcceptReqDto reqDto) {
        return BeanUtil.toBean(reqDto, ImplementTypeCodeFieldsAcceptRespDto.class);
    }

    /**
     * code:receptionService
     * name:M3用于获取当前身份人员ID或就职记录ID
     * desc:undefined
     * gen by moon at 12/18/2023, 1:39:21 PM
     **/
    @Trace(operationName = "M3用于获取当前身份人员ID或就职记录ID")
    @Tags({@Tag(key = "参数", value = "arg[0]"),
            @Tag(key = "返回值", value = "returnedObj")})
    public ImplementAcceptFieldUseWorkTaskRespDto implementAcceptFieldUseWorkTask(ImplementAcceptFieldUseWorkTaskReqDto reqDto) {
        return BeanUtil.toBean(reqDto, ImplementAcceptFieldUseWorkTaskRespDto.class);
    }

    /**
     * code:receptionService
     * name:M3-接收处理后A全部小圈子、B强提醒人员、C前两者相减数据集
     * desc:undefined
     * gen by moon at 12/28/2023, 6:55:17 AM
     **/
    @Trace(operationName = "M3-接收处理后A全部小圈子、B强提醒人员、C前两者相减数据集")
    @Tags({@Tag(key = "参数", value = "arg[0]"),
            @Tag(key = "返回值", value = "returnedObj")})
    public ImplementSendMsgReceiverAcceptFieldRespDto implementSendMsgReceiverAcceptField(ImplementSendMsgReceiverAcceptFieldReqDto reqDto) {
        return BeanUtil.toBean(reqDto, ImplementSendMsgReceiverAcceptFieldRespDto.class);
    }

    /**
     * code:receptionService
     * name:M3接收主题内容分析
     * desc:undefined
     * gen by moon at 1/18/2024, 2:01:18 AM
     **/
    @Trace(operationName = "M3接收主题内容分析")
    @Tags({@Tag(key = "参数", value = "arg[0]"),
            @Tag(key = "返回值", value = "returnedObj")})
    public ImplementFourthReceivingFieldRespDto implementFourthReceivingField(ImplementFourthReceivingFieldReqDto reqDto) {
        return BeanUtil.toBean(reqDto, ImplementFourthReceivingFieldRespDto.class);
    }

    /**
     * code:receptionService
     * name:M3-约定角色标识：分工者、分管领导
     * desc:undefined
     * gen by moon at 7/14/2024, 12:28:46 AM
     **/
    @Trace(operationName = "M3-约定角色标识：分工者、分管领导")
    @Tags({@Tag(key = "参数", value = "arg[0]"),
            @Tag(key = "返回值", value = "returnedObj")})
    public ImplementElevenReceivingFieldRespDto implementElevenReceivingField(ImplementElevenReceivingFieldReqDto reqDto) {
        return BeanUtil.toBean(reqDto, ImplementElevenReceivingFieldRespDto.class);
    }
    //手工接入方法
}
